﻿namespace MicroCloud.Identity
{
    /// <summary>
    /// 角色仓储
    /// </summary>
    public class RoleStore : RoleStoreBase<Role, long, RoleClaim, long, UserRole, long, User, long, Organization, long, RoleOrganization, long>
    {
        /// <summary>
        /// 初始化一个角色仓储 <see cref="RoleStore"/> 的新实例
        /// </summary>
        /// <param name="roleRepository">角色仓储</param>
        /// <param name="roleClaimRepository">角色声明仓储</param>
        /// <param name="userRoleRepository">用户角色仓储</param>
        /// <param name="userManager">用户管理器</param>
        /// <param name="orgRepository">组织机构仓储</param>
        /// <param name="roleOrgRepository">角色组织机构仓储</param>
        /// <param name="eventBus">事件总线</param>
        public RoleStore(
            IRepository<Role, long> roleRepository,
            IRepository<RoleClaim, long> roleClaimRepository,
            IRepository<UserRole, long> userRoleRepository,
            UserManager<User> userManager,
            IRepository<Organization, long> orgRepository,
            IRepository<RoleOrganization, long> roleOrgRepository,
            IEventBus eventBus
            )
            : base(roleRepository, roleClaimRepository, userRoleRepository, userManager, orgRepository, roleOrgRepository, eventBus)
        { }

    }
}